`DataLoader`s should be exposed to the SDKs
The Rerun Viewer and CLI now have access to the DataLoader machinery, making it possible to open any file or directory via our builtin loaders and/or user-provided ones.
Ideally, the SDKs would also have access to this machinery, which would make it possible to expose a universal log_file() APIs in there.
The function should probably have the form rec.log_file(entity_path, path="file.zip") or similar, i.e. a special log function, not using an archetype, because we are not logging the path or even the content of the file, but asking Rerun to find a DataLoader to log the file with.
The entity path is important, and should be passed on to the data loaders as a prefix to all the entity paths they use.
log_file could find a data-loader and pipe its output (via stdout) to the sink of the recorder.
Timelines is a tricky problem to solve.
I guess we would need to add some argument for setting all timelines and their values. The data loader should probably not update neither log_time nor log_tick.
I don't know how to handle files that contain data over time (e.g. videos) though.