Cleaned up command handling, renamed io_module -> interface