service: Set host, ident and gecos on self.user

Allow subclass to set them custom, else default to nick and server name.
service: Fix a race cdn where a user might disconnect before we try to send them a message

This is mainly a problem in callbacks and stuff, but we put it in the helper function to keep it simple.
service: Handle nick collisions with our LocalUser

Bitch-slap the other user.
dbservice: A subclass of Service for services with a database connection
Add pymysql to requirement.txt

This is needed for db stuff to work
Pull in schema file + test data from master branch