IO exists!

Ready for review!

Basic framework for the IO subpackage. Still need to add docstrings.
Can this be `UnregisteredFormatError`?