Finished heavy refactor. bot.js is the only place that handles the XMPP communication. Modules can either process arguments passed to them when their namespace is the 2nd argument (i.e. hikebot achievements *process these args*) or it (the module) can define an 'allMessagesListener' in its public scope that will be triggered on every message that wasn't sent by the bot in the MUC. Need to tidy up the way messages are tokenized as they're still a bit shitty. Need to tidy up how the response is handled from an allMessagesListener promise.