Allow application developers to modify cursors

With this change, cursors can be set on the map target again.
Add detection of canvas line dash support
Use ol.BrowserFeature.HAS_CANVAS_LINE_DASH in ol.render.canvas.Replay
Fix handling of line dash state in ol.render.canvas.Replay
Merge pull request #1684 from ahocevar/ie-cursor

Changing pointer cursor in examples is broken
Use protocol relative URL for OSM tiles
Merge pull request #1692 from fredj/osm-tiles

Use protocol relative URL for OSM tiles
Use protocol relative URL in ol.source.MapQuest
Use protocol relative URL in ol.source.Stamen
Save replay group, even if it is empty
Only replay replay group if it is not empty
Merge pull request #1695 from twpayne/fix-render-node-leak

Save replay group, even if empty
Merge pull request #1694 from twpayne/protocol-relative-url

Use protocol relative URL in tile sources
Fix handling of line dash state in ol.render.canvas.Immediate
Merge pull request #1681 from twpayne/line-dash

Fix management of line dash state
Use APOLLO imagery WMTS in the WMTS example
Merge pull request #1675 from bartvde/wmts-example-fix

WMTS example is broken (r=@twpayne)
Add a style option for vector layers

This can be a single ol.style.Style, and array of styles, or a style function.
Add tests for vector layer
Use style option in vector layer examples

Providing a styleFunction option still works because the layer property is still named styleFunction.