Split identity into controller and worker, add tracking nick changes

Identity is now split into ident.py which contains the code and event
handlers for tracking user to hostname mappings and identcontrol.py
which contains commands for testing what mappings exist

I also added an event to capture user nick changes and update the
appropriate mappings to reflect the changes

I also renamed channel2nick and nick2channel to channel2user and
user2channel to better reflect the fact they store hostnames not
nicks as hostnames are the unique identifier