Add new map option disableDefaultEvent.

String or array of events that should not trigger $apply (by default "center_changed", "zoom_changed", "drag", "dragstart", "dragend", "idle" trigger $apply)
Special value "all" to disable all default listener.
removing evalAsync alltogether
the rest of it
clonedModel attribute for uiGmapModel-Key to be used in ModelWatcher
- This is ripe for a ChildBase Class
This makes #946 and #772 compatible
typo
less use of getMarker() at least make maybeMarker more atomic for each function
- scope.markerModelsUpdate to force delayed updates on windows. Instead
  of windows (when dependent on markers) watching models we watch a
simple change counter. The change counter indicates that Markers is done
doing work, and then Windows can proceede to do its processing. This way
a gMarker is sure to be available without a race of windows to markers.

build all

typo on WindowChild constructor usage in it's parent model

typos on scope.existingPieces

build all
Merge pull request #961 from nmccready/nick_mc/issue_960

issue 960, 772, 946 ChildModel, clonedModel
issue #963 uiGmapsIsReady does work, the example is just busted (it was only creating one map (dom))
Merge pull request #967 from nmccready/nick_mc/issue_963_is_ready_broken

issue /#963 uiGmapsIsReady does work
chrome 38 repain fixes.. tried cherry-pick.. i don't have time for that
fix js for chrome maybe repaint
build
Merge branch 'master' of github.com:angular-ui/angular-google-maps
black listing works
specs show blacklist working
more blacklist event specs
Merge pull request #971 from nmccready/nick_mc/issue_717_zooming_events_blacklist

blacklist events for improving zooming
issue #717 #733

Playing with blacklist reveals a lot. Which is making me think twice
about having watches in here at all. (2.1.X may have none) The watch
events from zoom (which happen a ton) really begin to slow down the map
as it goes. IE. Make a bunch of markers keep zooming in and out.. the
tiles and scaling will eventually get crummy. Without the mods to the
scope values its all gravy. So, to have 2.0.X have available speed and
still have a similar API, I will add blacklist watches as well to follow
up commit set / PR.

Events Cleanup
- listeners are tracked and cleaned up on $destroy

Events are exposed via Control #733. They can be removed manually or use
scope.control.removeEvents(listeners)

Center, and Zoom watches

- double checking if the kicked off watch is even relevant by
  checking against its current scope value (not newValue). This is
necessary since the watches are kicked via timeout. Now the bail out
(return in the function) actually happend.
center and zoom.. more locking for watches