(instead of dispatching `load` event to merge them into `history`)
This is cleaner becuase now `context` doesn't need to keep an
`altGraph` state used only for Conflict Resolution.
The conflict resolution code calls the `iD.Connection` methods directly,
and other places in the code call `loadEntity` and `loadTiles` wrappers
that merge the entities into the main history.
Hash updates turn out to be very timing sensitive.
While it's OK for drag gestures to be throttled with
a trailing edge, manual moves such as zooming to a
particular feature should always trigger a leading
edge update.
To recoup the performance, we could refactor the map
events to the standard movestart, move, and moveend,
and update the hash only on moveend.
Fixes#2023
This is a facade interface that ties together a bunch of
different internal objects and will make it easier to write
tests for behaviors, modes, and operations.