Updates location hash when `current` changes

Refers #389
Changes update handler for `changed` and `hashchanged` in hash plugin

Avoids multiple invocations of the event handlers. Uses `changed`
instead of `translated` event to reduce the number of calls even when
this seems to broke the animation on some Chrome devices.

Refers #389