Added KeyOutput class module, beginning of #8
Added override pause code, so pausing/unpausing works correctly
Added KeyOutput to ModuleFactory, closes #8