Minor UI improvements (user location tracking + annotation persistence)

* Controller now updates when user location tracking updates
* Reduced annotation flickering when map dragged
  * added isEqual and hash to cluster annotation (I *think* this the right implementation, but please check)
  * updateAnnotationsWithCompletionHandler will now keep annotations if they haven’t actually changed