Add support for setting source_address.
Switch to Python's built-in logging module.

This allows client code to configure logging without having to mess
around with pydle's logging system (and pydle shouldn't hijack logging,
anyway).
Always perform _sync_user if metadata is available.

This is slightly less bad than only syncing user metadata if the user is
in a channel. When we received a PM, there was no way to retrieve
username/hostname information. This remedies it by making the
information available in the users dictionary and will be updated anyway
if a user sends a new message.
Merge pull request #8 from rfw/master

Fix logging, setting source address, and user metadata synchronisation.