Don't use window and document

With this change, our JavaScript can also be executed by
non-brower engines.
addPreRenderFunction calls requestRenderFrame

So there's no need to call requestRenderFrame prior to calling addPreRenderFunction.
Remove extra /**
Touch pan interaction request render frames
Touch rotate interaction requests render frames
Touch zoom interaction requests render frames
Use no browser globals at all
Add an updateSize method

We need a non-private/protected method to call when the map viewport size changes.
Merge pull request #532 from tschaub/update-size

Add an updateSize method.  Application code should call this when the map viewport size changes by some method other than a window resize.
Merge pull request #529 from ahocevar/global

Don't use window and document
Merge pull request #528 from elemoine/touch

Touch interactions should use requestRenderFrame