An interface for custom input/output

@param {Function?} output An output function
@param {Function?} input An input function
@param {Object?} data Data
function IOInterface(output, input, data) {
    this._output = output || function() { };
    this._input = input || function(done) { done('\n'); };
    this._data = data || {};
}