SQL-based roster

Also small changes in UI.

I got this stuff reworked. What's broken? I need to add some code to
remove stuff from roster that is no longer on the server, but present in
local copy. And everything needs testing. Testing. Testing. Testing...