Move touchstart preventDefault to ol.renderer.dom.Map

`preventDefault` is called to prevent the img context menu on mobile devices.
Add ol.renderer.dom.Map#disposeInternal
Merge pull request #2855 from fredj/blur_preventDefault

Move touchstart preventDefault to ol.renderer.dom.Map
Add uriScheme parameter to Bing Maps metadata request to avoid mixed content
Merge pull request #2864 from bartvde/bing-mixed-content

Avoid mixed content in Bing Maps (r=@elemoine)
Cluster source calls loadFeatures on vector source

Closes #2801
Merge pull request #2866 from elemoine/2801

Cluster source calls loadFeatures on vector source
Add old value to property change events
Merge pull request #2865 from elemoine/oldvalue

Add old value to property change events
Set type for `ol.ext.*`
Minimal typedef
Work with modules that assign to exports

CommonJS style modules will either assign `exports` to `module` or will assign properties to `exports`.  This allows us to work with either style:

    module.exports = Foo;

or

    exports.Foo = Foo;

Support for additional properties that are assigned to `exports` (or non-function values assigned to `module.exports`) will likely take additional typedef work in the wrapper.
Merge pull request #2867 from openlayers/module

Support for importing CommonJS style modules (like rbush).
Add support for bulk insertion to rbush wrapper
Use bulk insertion for addFeatures