feat(client, server, shared): new login/register
wip(client, server): handle auth and connecting
feat(server): listen for auth events
wip(server, shared): dual purpose auth event