Add error message if plugin is not loaded

Closes #51
Adding getKeyboardResponse method to core
update to work with new centralized keyboard response method
wrong logical operator
bug fix in getKeyboardResponse
a few small bugs
use getKeyboardResponse
allow key string lookup
Merge pull request #53 from jodeleeuw/centralize-key-responses

Centralize key responses
add randomization module

* includes simpleSample method and a few private helper functions
add factorial method, rename simpleSample to repeat
Merge pull request #55 from jodeleeuw/randomization

Randomization
add ability to cancel getKeyboardResponse listeners
check to make sure listener exists before removing
use getKeyboardResponse
move functions into pluginAPI module
move keycode
add option to persist a keyboard listener
use getKeyboardResponse
use getKeyboardResponse