Fix bountysource

This PR fixes #2382.

I had to drop the `NOT NULL` constraint on `elsewhere.user_name`. That change required modifying some DB queries to use `user_id` instead of `user_name`. A nice side effect is that these queries will be faster because we have an index on `user_id`.

While I was at it I moved all the DB code that was in `gittip/elsewhere/__init__.py` to `gittip/models/account_elsewhere.py`. This is a first step towards moving the elsewhere code into its own library.