Prefinal version of IO_Manager. Needs testing