Moving the enum's to the header.
Add a comment aove io_generate_mode_from_string forward declaration.