Move definition of mp_builtin_open_obj to a separate module, then file.c becomes more or less compartmentalized FatFs file class, which can be used together with file class implementations for other (V)FSes.