Spot when second hash is encoded in fragment.

This switches to using location.hash, rather than location.href,
and copes whether the second hash is given as "#" or "%23".
Add a 'fragmention' class to matched element.

Remove from existing elements when a new one is found (e.g. via
hashchange). WIP, this is IE9+ only, needs feature-checking.