Add method to determine winding order of linear rings
Store rings so exerior is clockwise and interior is counter-clockwise

KML and WKT don't specify a winding order, so we write those out in CW/CCW order (for exterior/interior).  GML references ISO 19107 that specifies CCW/CW, so we serialize in that winding order.

Having hand generated all this GML data the first time around, I reserve the right to modify it for the tests.
Pass options to the base class
The `fromParts` factories take geometry instances instead of coords

The MultiLineString case was correct here.  The MultiPoint and MultiPolygon cases should be using the constructor instead of the `fromParts` factories.
KML MultiGeometry may contain other MultiGeometry

As demonstrated in the tests, a MultiGeometry may contain other MultiGeometry nodes.  We can support this with heterogenous GeometryCollection instances - though these are not currently rendered.
Merge pull request #690 from fredj/layer-options

ol.layer.Layer: default values
Remove ol.MapBrowserEvent#stopOtherInteractions

and check for false/true in the return from handleMapBrowserEvent. Refs #791.
Merge pull request #829 from tschaub/kml

Parse MultiGeometry in KML
Adding a prettier KML example
Update example to use expression parsing
Fix WMTS requestEncoding
Sort matrixIds by scaleDenominator

We cannot assume that the matrixIds are ordered in the matrixSet. For example, they're not ordered in http://wxs.ign.fr/cle/geoportail/wmts?SERVICE=WMTS&REQUEST=GetCapabilities.
Add an IGN WMTS example
Export ol.tilegrid.TileGrid#getResolutions
Timezone offset in a tooltip
Merge pull request #801 from elemoine/ign

Add an IGN WMTS example
Merge pull request #831 from tschaub/kml-example

Nicer KML example
The examples and docs are deployed from the openlayers.github.io repo

To deploy the latest docs and examples, see https://github.com/openlayers/openlayers.github.io/blob/build/README.md

tl;dr

    git clone -b build https://github.com/openlayers/openlayers.github.io.git
    cd openlayers.github.io
    npm install
    npm run deploy

Subsequent deploys are simply: `npm run deploy`

This publishes the examples (http://ol3js.org/en/master/examples/) and docs (http://ol3js.org/en/master/apidoc/).

The `build.py gh-pages` target published under different paths (http://ol3js.org/ol3/master/examples/ and http://ol3js.org/ol3/master/apidoc/).  Having two (not always up to date) copies of this content hosted on the same domain is A Bad Idea.
Correct links to hosted examples (and docs)
Adjective -> adverb