Limit feature exports
Change touchmove and touchstart listened element to 'document'

As for the mouse events, this allows to drag, zoom or rotate the map
with pointer(s) who moved outside of the viewport.
Only consider touch events to compute ol.interaction.Touch.targetTouches
Only dispatch touchmove events after a touchstart
Perform ol.Map#setTarget string-to-Element conversion in event handler

With this change, ol.Map#setTarget no longer changes the type of the
value passed to it.
Update ol.control.FullScreen to handle string targets
Update teleport example to use string target
Rename addPreRenderFunction to beforeRender and remove the plural
Exporting set and setGeometry

Since the set method is exported on ol.Object, we need to export the method on the feature prototype to get correct behavior.
Making sure that options are not renamed
Merge pull request #969 from ahocevar/master

WMS getFeatureInfoOptions ignored in minified build
Merge pull request #972 from tschaub/before-render

Rename addPreRenderFunction to beforeRender and remove the plural.
Merge pull request #949 from tschaub/feature-exports

Limited feature exports.
Merge pull request #925 from fredj/ms_pointer_events

MSPointer events fixes
Merge pull request #971 from twpayne/set-target

Cleaner ol.Map#setTarget handling
No need for ol.Map#target_
Merge pull request #975 from elemoine/set-target

Remove ol.Map#target_
Reset the map focus on 'mouseout' and 'touchend'
Merge pull request #976 from fredj/focus_touchend

Reset the map focus on 'mouseout' and 'touchend'
Instead of providing animation functions, provide the namespace

This follows the convention in the Closure Library of providing either namespace objects (where the property starts with a lowercase letter), constructors (where the property starts with an uppercase letter), or enums (all uppercase properties, only one instance of this in the closure library).