Favorite button in profile

Resolves #908.

http://jenkins.buttonweavers.com:8080/job/buttonmen-AdmiralJota/193/

Dependent on #1075.
Side comment: maybe we should make this a function and use it every time we're catching exceptions from SQL queries.  Not a request for this ticket, just musing.