IO API refactoring

@nealstewart 

Make the standalone-versus-plugin API conform to other types of thingies in Spiritual (broadcasts, actions, ticks etc) in preparation for Year of the Test.
They handle the output that gets output. Will explain in JSDoc next time.