Add a custom signal implementation.

I *really* hate using subclassing to add that kind of functionality.
Add some fields to SleekXMPP structures.
Rewrite UI using a custom stanza dispatcher.

Also, add support for normal chats.
Fix MUC error handling.
Remove a bit of redundant stuff.
Kind of fix tab labels.

They are still awful, but hey, they should at least work fine now.