AngularJS directive for syncing a model with the URL hash.