Merge pull request #1370 from ahocevar/unnest-loops

Unnest loops
Export a getKey method on ol.ObjectEvent
Merge pull request #930 from elemoine/externs

Use @exportSymbol instead of @exportClass|Function
Merge pull request #1371 from elemoine/getbrowserevent

Add ol.MapBrowserEvent#getBrowserEvent
Merge pull request #1366 from bartvde/wkt-data

wkt example is broken
Merge pull request #1350 from elemoine/gutter

Add gutter support to ol.source.TileWMS
Make forEachFeatureAtPixel work with layer groups
Merge remote-tracking branch 'upstream/master' into vector-api

Conflicts:
	src/objectliterals.jsdoc
	src/ol/attribution.js
	src/ol/geom/geometry.js
	src/ol/geom/geometrycollection.js
	src/ol/geom/linestring.js
	src/ol/layer/vectorlayer.exports
	src/ol/layer/vectorlayer.js
	src/ol/map.js
	src/ol/proj/proj.js
	src/ol/renderer/canvas/canvasvectorlayerrenderer.js
	src/ol/source/imagewmssource.js
	src/ol/source/tilewmssource.js
	src/ol/source/vectorsource.exports
	src/ol/source/vectorsource.js
	src/ol/source/wmssource.js
	src/ol/style/style.js
	src/ol/tilegrid/tilegrid.js
	src/ol/tilegrid/wmtstilegrid.js
	src/ol/tilegrid/xyztilegrid.js
Use olx options ns in icon and geojson examples
Add ol.geom.simplify.schaub
Use Schaub's topology-preserving simplification method for Polygons and MultiPolygons
Merge pull request #1348 from tschaub/beforechange

Add `ol.ObjectEvent` for changes to `ol.Object` properties.  Previously, `ol.Object` dispatched instances of `goog.events.Event` with type `change`.  Now `ol.ObjectEvent` instances will be dispatched on property changes.  The events include a `getKey` method to get the name of the property being changed.  The `beforepropertychange` type event is fired before a property value changes, and the `propertychange` type event fires after the property value changes.
Remove handling of @exportClass
Remove handling of @exportFunction
Do not ascend when node has more siblings
Define isDef on ol.IView2D, ol.IView3D and ol.View
Work around compiler not detecting implementation of abstract methods
ol.interaction.Interaction methods should take ol.IView2Ds, not ol.View2Ds
Fix use of ol.IView2D in ol.interaction.DragPan
Fix use of ol.IView2D in ol.interaction.DragRotateAndZoom