Made a copy of the working testbot.py file to exocortex.py so there's a point
in time snapshot of a working module.  This will happen more before the base
class is usable.

Signed-off-by: The Doctor <drwho@virtadpt.net>
Added some code to the ExocortexBot.message() event handler to ensure that
only commands from the bot's registered owner will be accepted.

Signed-off-by: The Doctor <drwho@virtadpt.net>
Started working on a way to make the bot only listen to commands in group
chat sent by the bot's owner.  I'm tired and can't think straight.

Signed-off-by: The Doctor <drwho@virtadpt.net>
Changed some of the print statements into XMPP chat messages.  This will no
doubt come back to bite me.

Started working on code to make the base class accept commands only from its
owner while in a MUC.  This is harder than expected due to how XMPP implements
MUC JIDs.

Started working on notes about how SleekXMPP represents certain data structures
internally because they're not documented.

Signed-off-by: The Doctor <drwho@virtadpt.net>
Changed the format of the config file so that the bot's owner has to specify
their groupchat nick behind their username in IRC-like fashion, i.e.,
user@host (Nickname goes here).

Reworked __init__() to suss out the owner's MUC nick.

Reworked ExocortexBot.groupchat() to figure out the MUC nick of every message
it picks up (which is remarkably easy once you stop screwing around with XMPP
query stanzas) and only carry out the command or response if it matches the
bot's owner's MUC nick.

Signed-off-by: The Doctor <drwho@virtadpt.net>