extmod: Add generic VFS sub-system.

This provides mp_vfs_XXX functions (eg mount, open, listdir) which are
agnostic to the underlying filesystem type, and just require an object with
the relevant filesystem-like methods (eg .mount, .open, .listidr) which can
then be mounted.

These mp_vfs_XXX functions would typically be used by a port to implement
the "uos" module, and mp_vfs_open would be the builtin open function.

This feature is controlled by MICROPY_VFS, disabled by default.
diff --git a/py/mpstate.h b/py/mpstate.h
index 91fb68b..9c73f77 100644
--- a/py/mpstate.h
+++ b/py/mpstate.h
@@ -165,6 +165,11 @@
     struct _fs_user_mount_t *fs_user_mount[MICROPY_FATFS_VOLUMES];
     #endif
 
+    #if MICROPY_VFS
+    struct _vfs_mount_t *vfs_cur;
+    struct _vfs_mount_t *vfs_mount_table;
+    #endif
+
     //
     // END ROOT POINTER SECTION
     ////////////////////////////////////////////////////////////