fix tests for ID parsing (#291)

The previous tests accessed the network. This refactoring lets us test the ID
parsing in isolation.
#291: simplify plugin interface for album_for_id
#291: restore shortcut for manual ID searches
fix implicit ID search

This was broken because hooks._album_for_id now returns a list. This was
assuming it returned a single value (or None).
#291: plugin hook for track_for_id

For symmetry with album candidates, plugins can now provide item candidates by
ID.
#291: changelog and docs