Fix tagging, broken by bookmark observer API changes.

Obsoletion of nsIBookmarkObserver.onBeforeItemRemoved() broke the way
Brief tracks tags. To check if the removed item was a tag, Brief checks
if its parent is a tag folder, but the parent is already unavailable in
nsIBookmarkObserver.onItemRemoved() if the last tag was removed.

To work around this, Brief has to store IDs of tag items, in addition to
tag names. We can then check if an item was a tag  without looking up
the parent. This requires changing the database schema to accommodate a
tagID in entry_tags table (a columns that used to be there, curiously
enough, but was later deemed unnecessary).