Move button construction out of pluginInit
Move plugin buttons within instance context

This makes it possible to call instance methods on the current plugin
from event handlers, without the additional indirection through
window.annotator.
Simplify setVisibleHighlights function

setVisibleHighlights was previously two methods disguised as one, behind
the "notify" parameter. This commit moves all the code related to
actually changing local state into the onSetVisibleHighlights handler,
making the setVisibleHighlights function responsible solely for firing
the event.
Guest#setVisibleHighlights will always toggle highlights
Merge pull request #1622 from hypothesis/simplify-highlights

Simplify highlight visibility toggling.
Handle undefined data on 'auth' event for AuthAppController

When switching tabs on our /login route, the scope.on 'destroy' is
fired in the AuthController which emits an auth event with undefined
data value.

Our AuthAppController was trying to check the data.userid for this
undefined value. We only need to do that when data is undefined.

Fixes #1627
Remove elide filter

This was only used by the old (non-unified) stream template.
Update d-t-m to 2d3cac89 (master branch)

Kill console log messages.
Refactor API code to use annotator-store flaskless
Add logging messages in __init__.py
Replace all uses of ann.id with ann['id']

Because of its potential deprecation in annotator-store. There was only
one occurrence, apparently.
Avoid IStoreClass in streamer.py, make _search_raw
Use annotator-store's new search_raw
Adapt to new default analyzer in annotator-store
Remove useless lines/comments
Don't call get_consumer from get_user
Remove IAnnotationClass
Accept index creation error when alias exists
Depend on annotator-store v0.12.0
Remove useless constructor