Adds Input and Output modules. Pretty poorly programmed. Tidy up later.