Added Factoids, Improved config, + more.

Added Factoids (remember, forget, ?factoid)
Now use Config object to handle config.json
All listeners annotated with @AddListener are added when building the
Configuration.
Moved parsing of custom events into listener classes instead of
InputParser
Cleaned up + Added some TODOs